var timer;  // 定义定时器全局变量

// 新增一片雪花
function createOneSnow() {
    var leftX = Math.random() * window.innerWidth;
    var topY = Math.random() * window.innerHeight;
    var snowDiv = document.createElement("snow");
    snowDiv.style.position = "fixed";
    snowDiv.style.left = leftX + "px";
    snowDiv.style.top = topY + "px";
    // 为该新增的DIV元素内部添加一张雪花的图片
    snowDiv.innerHTML = "<img src='./snow/1.png' class='imgClass' width='20' />";
    // 将该DIV元素增加到BODY中，浏览器才会对其进行渲染
    document.body.appendChild(snowDiv);
}

// 新增一批雪花
function createManySnow() {
    for (var i = 1; i <= 60; i++) {
        createOneSnow();
    }
}

// 开始让雪花移动，用定时器调用该函数
function startFly() {
    var allSnows = document.getElementsByTagName("snow");
    for (var i=0; i<allSnows.length; i++) {
        var randomTop = Math.random() * 5;  // 每次移动的距离在6像素内
        allSnows[i].style.top=allSnows[i].offsetTop+randomTop+"px";
        // 当某个雪花的位置正好可以被300整除时，新增一片雪花
        if (allSnows[i].offsetTop % 300 == 0) {
            createOneSnow();
        }

        // 控制数量
        var allSnows = document.getElementsByTagName("snow");
        var snowLength = allSnows.length;

        if(snowLength - 100 < 0){
            createOneSnow();
        }
        if(snowLength - 100 > 0){
            allSnows[0].remove();
        }

        // 当某个雪花的位置已经超出浏览器窗口时，将该雪花删除，并再新增一片
        if (allSnows[i].offsetTop > window.innerHeight) {
            allSnows[i].remove();
            createOneSnow();
        }
    }
}

// 停止雪花的移动，并让开始按钮可用
function stopFly() {
    clearInterval(timer);   // 清除计时器效果：暂停计时
}

function removeSnow() {
    var allSnows = document.getElementsByTagName("snow");
    var snowLength = allSnows.length;
    for (var i=0; i<snowLength; i++) {
        // allSnows[i].remove();  // 点击一次删除一半的雪花
        allSnows[0].remove();
    }
}
